package com.aichat.ai_chatbackend.model.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;

/**
 * AI角色表
 * @TableName ai_character
 */
@TableName(value ="ai_character")
@Data
public class AiCharacter implements Serializable {
    /**
     * 角色ID
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 角色名称
     */
    private String name;

    /**
     * 角色描述
     */
    private String description;

    /**
     * 性格设定
     */
    private String personality;

    /**
     * 背景故事
     */
    private String background;

    /**
     * 系统提示词模板
     */
    private String systemPrompt;

    /**
     * 角色头像
     */
    private String avatarUrl;

    /**
     * 语音ID
     */
    private String voiceId;

    /**
     * 是否公开: 0-私有, 1-公开
     */
    private Integer isPublic;

    /**
     * 创建者ID
     */
    private Long creatorId;

    /**
     * 使用次数
     */
    private Integer usageCount;

    /**
     * 创建时间
     */
    private Date createdAt;

    /**
     * 更新时间
     */
    private Date updatedAt;

    /**
     * 状态: 0-禁用, 1-启用
     */
    private Integer status;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}